
package com.insigma.business.qrcode.soldier._consumer.impl;


import com.insigma.business.qrcode.common.template.BasePagingResponse;
import com.insigma.business.qrcode.common.vo.BaseDeleteRequest;
import com.insigma.business.qrcode.common.vo.BaseResponse;
import com.insigma.business.qrcode.soldier.dto.*;
import com.insigma.business.qrcode.soldier.entity.*;
import com.insigma.business.qrcode.soldier.request.*;
import com.insigma.business.qrcode.soldier._consumer.SoldierBasicInfoConsumer;
import com.insigma.business.qrcode.soldier._provider.SoldierBasicInfoProvider;
import com.insigma.business.qrcode.soldier._provider.SoldierPetitionInfoProvider;
import com.insigma.business.qrcode.soldier._provider.SoldierTpAllProvider;
import com.insigma.business.qrcode.common._provider.CommonAdminAreaProvider;
import com.insigma.business.qrcode.soldier._provider.CommonSmsPoolProvider;
import org.springframework.stereotype.Service;

import javax.annotation.Resource;
import java.util.List;
import java.util.Map;


@Service("soldierBasicInfoConsumer")
public class SoldierBasicInfoConsumerImpl implements SoldierBasicInfoConsumer {

    @Resource
    private SoldierBasicInfoProvider soldierBasicInfoProvider;

    @Resource
    private SoldierTpAllProvider soldierTpAllProvider;

    @Resource
    private CommonAdminAreaProvider commonAdminAreaProvider;
    @Resource
    private CommonSmsPoolProvider commonSmsPoolProvider;
    @Resource
    private SoldierPetitionInfoProvider soldierPetitionInfoProvider;

    public SoldierBasicInfoConsumerImpl(SoldierBasicInfoProvider soldierBasicInfoProvider) {
        this.soldierBasicInfoProvider = soldierBasicInfoProvider;
    }

    @Override
    public BasePagingResponse<List<SoldierBasicInfoDTO>> searchSoldierBasicInfo(final SoldierBasicInfoSearchRequest searchRequest) {
        return soldierBasicInfoProvider.searchSoldierBasicInfo(searchRequest);
    }

    @Override
    public BaseResponse<SoldierBasicInfoDTO> getSoldierBasicInfo(String idCardNo) {
        return soldierBasicInfoProvider.getSoldierBasicInfoByCard(idCardNo);
    }

    
    @Override
    public BaseResponse<String> insertSoldierBasicInfo(final SoldierBasicInfoInsertRequest insertRequest) {
        return soldierBasicInfoProvider.insertSoldierBasicInfo(insertRequest);
    }

    
    @Override
    public BaseResponse<Integer> updateSoldierBasicInfo(final SoldierBasicInfoUpdateRequest updateRequest) {
        return soldierBasicInfoProvider.updateSoldierBasicInfo(updateRequest);
    }

    
    @Override
    public BaseResponse<Integer> deleteSoldierBasicInfo(final BaseDeleteRequest deleteRequest) {
        return soldierBasicInfoProvider.deleteSoldierBasicInfo(deleteRequest);
    }

    @Override
    public BaseResponse<String> editBasicInfo(SoldierBasicEditRequest request) {
        return soldierBasicInfoProvider.editBasicInfo(request);
    }

    @Override
    public BasePagingResponse<List<SoldierBasicShortInfoDTO>> searchPreferentialTreatment(SoldierBasicInfoSearchRequest request) {
        return soldierBasicInfoProvider.searchPreferentialTreatment(request);
    }

    @Override
    public BaseResponse<InsuredEntity> queryInsured(String idCardNo) {
        return soldierBasicInfoProvider.queryInsured(idCardNo);
    }

    @Override
    public BaseResponse<List<InsuredInfoEntity>> queryInusreList(String idCardNo, String name) {
        return soldierBasicInfoProvider.queryInusreList(idCardNo, name);
    }

    @Override
    public BaseResponse<List<EducationEntity>> queryEducationList(String idCardNo, String name) {
        return soldierBasicInfoProvider.queryEducationList(idCardNo, name);
    }

    @Override
    public BaseResponse<SubsistenceEntity> querySubsistence(String idCardNo) {
        return soldierBasicInfoProvider.querySubsistence(idCardNo);
    }

    @Override
    public BaseResponse<SoldierBasicInfoDTO> getSoldierBasicInfoByCardAndName(String idCardNo, String name) {
        return soldierBasicInfoProvider.getSoldierBasicInfoByCard(idCardNo, name);
    }

    @Override
    public BaseResponse<MedicalInsuranceConsumptionEntity> queryMedicalInsuranceConsume(String idCardNo, String name) {
        return soldierBasicInfoProvider.queryMedicalInsuranceConsume(idCardNo, name);
    }

    @Override
    public BaseResponse<List<SoldierBasicInfoDTO>> listSoldierBasicInfoByCondition(String condition, String adminCode) {
        return soldierBasicInfoProvider.listSoldierBasicInfoByCard(condition, adminCode);
    }

    @Override
    public BaseResponse<DisabledEntity> queryDisabledInfo(String idCardNo) {
        return soldierBasicInfoProvider.queryDisabledInfo(idCardNo);
    }

    @Override
    public BaseResponse<List<CarEntity>> queryCarList(String idCardNo) {
        return soldierBasicInfoProvider.queryCarList(idCardNo);
    }

    @Override
    public BaseResponse<List<ShareholderEntity>> queryShareholderList(String idCardNo) {
        return soldierBasicInfoProvider.queryShareholderList(idCardNo);
    }

    @Override
    public BaseResponse<List<EnterpriseInfoEntity>> queryEnterpriseList(String uniscId) {
        return soldierBasicInfoProvider.queryEnterpriseList(uniscId);
    }

    @Override
    public BaseResponse<List<HouseEntity>> queryHouseList(String idCardNo, String name) {
        return soldierBasicInfoProvider.queryHouseList(idCardNo, name);
    }

    @Override
    public BaseResponse<List<UntrustworthyEntity>>  queryUntrustworthy(String idCardNo, String name) {
        return soldierBasicInfoProvider.queryUntrustworthy(idCardNo, name);
    }

    @Override
    public BaseResponse<List<CommunityCorrectionEntity>> queryCommunityCorrectionList(String idCardNo) {
        return soldierBasicInfoProvider.queryCommunityCorrectionList(idCardNo);
    }

    @Override
    public BaseResponse<SoldierBasicInfoDTO> getSoldierBasicInfoByCard(String idCardNo) {
        return soldierBasicInfoProvider.getSoldierBasicInfoByCard(idCardNo);
    }

    @Override
    public BaseResponse<SoldierBasicInfoDTO> getSoldierBasicInfoByCard_basicDb(String idCardNo) {
        return soldierBasicInfoProvider.getSoldierBasicInfoByCard_basicDb(idCardNo);
    }


    @Override
    public BaseResponse<Map<String, SoldierBasicInfoDTO>> getSoldierId2ObjMapByIdList(final List<String> idList) {
        return soldierBasicInfoProvider.getSoldierId2ObjMapByIdList(idList);
    }

    @Override
    public BaseResponse<HouseholdRegistrationEntity> queryHouseholdRegistrationInfo(String idCardNo, String name) {
        return soldierBasicInfoProvider.queryHouseholdRegistrationInfo(idCardNo, name);
    }

    @Override
    public BaseResponse<List<FloatingPopulationEntity>> queryFloatingPopulationList(String idCardNo, String name) {
        return soldierBasicInfoProvider.queryFloatingPopulationList(idCardNo, name);
    }

    @Override
    public BaseResponse<List<SocialSecurityEntity>> querySocialSecurity(String idCardNo, String name) {
        return soldierBasicInfoProvider.querySocialSecurity(idCardNo, name);
    }

    @Override
    public BaseResponse<List<EffectiveJudgmentEntity>> queryEffectiveJudgmentList(String idCardNo, String name) {
        return soldierBasicInfoProvider.queryEffectiveJudgmentList(idCardNo, name);
    }

    @Override
    public BaseResponse<List<GovernmentPensionInsuranceEntity>> queryGovernmentPensionInsuranceList(String idCardNo, String name) {
        return soldierBasicInfoProvider.queryGovernmentPensionInsuranceList(idCardNo, name);
    }

    @Override
    public BaseResponse<List<MaritalInfoEntity>> queryMaritalInfo(String idCardNo, String name, String sex) {
        return soldierBasicInfoProvider.queryMaritalInfo(idCardNo, name, sex);
    }

    @Override
    public BaseResponse<List<ProvidentFundEntity>> queryProvidentFund(String idCardNo, String name) {
        return soldierBasicInfoProvider.queryProvidentFund(idCardNo, name);
    }

    @Override
    public BaseResponse<List<HuKouEntity>> queryHuKouInfo(String idCardNo) {
        return soldierBasicInfoProvider.queryHuKouInfo(idCardNo);
    }

    @Override
    public BaseResponse<String> importNewSoldierInfo() {
        return soldierBasicInfoProvider.importNewSoldierInfo();
    }

    @Override
    public BaseResponse<SoldierBasicInfoDTO> getSoldierBasicInfoBySoldierId(String soldierId) {
        return soldierBasicInfoProvider.getSoldierBasicInfoBySoldierId(soldierId);
    }

    @Override
    public BaseResponse<ExcelResultBO> queryAreaQrDetailExcel(SimpleApiRequest request) {
        return soldierBasicInfoProvider.queryAreaQrDetailExcel(request);
    }

    @Override
    public BaseResponse<String> updateSoldierExtraInfoByCardNo(SoldierBasicInfoUpdateRequest request) {
        return soldierBasicInfoProvider.updateSoldierExtraInfoByCardNo(request);
    }

    @Override
    public BasePagingResponse<List<SoldierBasicShortInfoDTO>> searchAreaSoldierShortList(SoldierBasicInfoSearchRequest request) {
        return soldierBasicInfoProvider.searchAreaSoldierShortList(request);
    }

    @Override
    public BaseResponse<SoldierBasicInfoDTO> getSoldierBasicInfoById(BaseApiRequest request) {
        return soldierBasicInfoProvider.getSoldierBasicInfo(new BaseGetRequest(request.getId()));
    }

    @Override
    public BaseResponse<String> setSoldierDead(SimpleApiRequest request) {
        return soldierBasicInfoProvider.setSoldierDead(request);
    }

    @Override
    public BasePagingResponse<List<SoldierBasicShortInfoDTO>> searchAreaDifficultySoldierShortList(SoldierBasicInfoSearchRequest soldierBasicInfoSearchRequest) {
        return soldierBasicInfoProvider.searchAreaDifficultySoldierShortList(soldierBasicInfoSearchRequest);
    }

    @Override
    public BasePagingResponse<List<SoldierBasicShortInfoDTO>> searchAreaUnemploymentSoldierShortList(SoldierBasicInfoSearchRequest soldierBasicInfoSearchRequest) {
        return soldierBasicInfoProvider.searchAreaUnemploymentSoldierShortList(soldierBasicInfoSearchRequest);
    }

    @Override
    public BaseResponse<SoldierBasicCheckInfoDTO> checkIsSoldier(String idCardNo) {
        return soldierBasicInfoProvider.checkIsSoldier(idCardNo);
    }

    @Override
    public BaseResponse<Integer> addLabels(SoldierBasicInfoUpdateRequest request) {
        return soldierBasicInfoProvider.addLabels(request);
    }

    @Override
    public BaseResponse<String> refreshAllBasicInfo(String idCardNo) {
        return soldierBasicInfoProvider.refreshAllBasicInfo(idCardNo);
    }

    @Override
    public BaseResponse<String> refreshAllTpExtraInfo(SoldierRefresherRequest request) {
        return soldierBasicInfoProvider.refreshAllTpExtraInfo(request);
    }

    @Override
    public BaseResponse<StatsEmploymentInfo> testCalculate(BaseGetRequest baseGetRequest) {
        BaseResponse<StatsEmploymentInfo> statsEmploymentInfoBaseResponse = soldierTpAllProvider.dealYear3Employment(baseGetRequest);
        return statsEmploymentInfoBaseResponse;
    }

    @Override
    public BaseResponse<Integer> updateBasicInfoOfYryd(SoldierBasicInfoUpdateRequest request) {
        return soldierBasicInfoProvider.updateBasicInfoOfYryd(request);
    }

    @Override
    public BaseResponse<String> refreshExtraMaxCountInfo(SoldierRefresherRequest request) {
        return soldierBasicInfoProvider.refreshExtraMaxCountInfo(request);
    }

    @Override
    public BaseResponse<String> convertAndSetNewResidentCode(String adminAreaCode) {
        return commonAdminAreaProvider.convertAndSetNewResidentCode(adminAreaCode);
    }

    @Override
    public BaseResponse<Integer> setUnemploymentRegistrationTime(SoldierTpAllUpdateRequest soldierTpAllUpdateRequest) {
        return soldierTpAllProvider.setUnemploymentRegistrationTime(soldierTpAllUpdateRequest);
    }

    @Override
    public BaseResponse<String> deleteDeadAndXyjsSoldiers(SimpleApiRequest request) {
        return soldierBasicInfoProvider.deleteDeadAndXyjsSoldiers(request);
    }

    @Override
    public BaseResponse<String> refreshToOriginAdminAreaCode(String adminAreaCode) {
        return commonAdminAreaProvider.refreshToOriginAdminAreaCode(adminAreaCode);
    }

    @Override
    public BaseResponse<?> queryHuKouBen(String idCardNo) {
        return soldierBasicInfoProvider.queryHuKouBen(idCardNo);
    }

    @Override
    public BaseResponse<String> insertAllSoldier(SimpleApiRequest request) {
        return soldierBasicInfoProvider.insertAllSoldier(request);
    }

    @Override
    public BaseResponse<StatsEmploymentInfo> dealEmployInfo(SoldierTpAllSearchRequest request) {
        return soldierTpAllProvider.dealEmployInfo(request);
    }

    @Override
    public BaseResponse<SoldierBasicShortInfoDTO> getSoldierShortInfo(String idCardNo) {
        return soldierBasicInfoProvider.getSoldierShortInfo(idCardNo);
    }

    @Override
    public BaseResponse<List<EnterpriseInfoEntity>> queryEnterpriseListByName(String name) {
        return soldierBasicInfoProvider.queryEnterpriseListByName(name);
    }

    @Override
    public BaseResponse<List<EnterpriseCreditRatingEntity>> queryEnterpriseCreditRating(String name) {
        return soldierBasicInfoProvider.queryEnterpriseCreditRating(name);
    }

    @Override
    public BaseResponse<List<ShareholderEntity>> isMilitaryEnterprise(String uniscid) {
        return soldierBasicInfoProvider.isMilitaryEnterprise(uniscid);
    }

    @Override
    public BaseResponse<List<SoldierEmploymentTimeLine>> queryEmploymentLine(String idCardNo) {
        return soldierBasicInfoProvider.queryEmploymentLine(idCardNo);
    }

    @Override
    public BaseResponse<String> exportDetail(SimpleApiRequest request) {
        return soldierTpAllProvider.exportDetail(request);
    }

    @Override
    public BaseResponse<ExcelResultBO> queryExportInfo(CommonTmpInfoSearchRequest searchRequest) {
        return  soldierBasicInfoProvider.queryExportInfo(searchRequest);
    }

    @Override
    public BaseResponse<String> superExportSoldierBasicInfo(SoldierBasicInfoSearchRequest searchRequest) {
        return soldierBasicInfoProvider.superExportSoldierBasicInfo(searchRequest);
    }

    @Override
    public BaseResponse<Integer> updateLatestSocialTime(SoldierTpAllUpdateRequest soldierTpAllUpdateRequest) {
        return soldierTpAllProvider.updateLatestSocialTime(soldierTpAllUpdateRequest);
    }

    @Override
    public BaseResponse<Integer> fixBirthday(SoldierBasicInfoUpdateRequest request) {
        return soldierBasicInfoProvider.fixBirthday(request);
    }

    @Override
    public BaseResponse<SoldierBasicCheckInfoDTO> checkIsSoldierByMobile(String mobile) {
        return soldierBasicInfoProvider.checkIsSoldierByMobile(mobile);
    }

    @Override
    public BaseResponse<String> exportJcCompany(SoldierTpAllSearchRequest searchRequest) {
        return soldierTpAllProvider.exportJcCompany(searchRequest);
    }

    @Override
    public BaseResponse<SoldierTokenDTO> obtainJxAuth(SoldierTokenRequest request) {
        return soldierBasicInfoProvider.obtainJxAuth(request);
    }

    @Override
    public BaseResponse<HealthStatsDTO> statsHealth(SoldierBasicInfoSearchRequest searchRequest) {
        return soldierBasicInfoProvider.statsHealth(searchRequest);
    }

    @Override
    public BaseResponse<List<SubsistenceAllowanceEntity>> querySubsistenceAllowance(String idCardNo) {
        return soldierBasicInfoProvider.querySubsistenceAllowance(idCardNo);
    }

    @Override
    public BaseResponse<List<LowSideEntity>> queryLowSide(String idCardNo) {
        return soldierBasicInfoProvider.queryLowSide(idCardNo);
    }

    @Override
    public BaseResponse<List<ExtremelyPoorEntity>> queryExtremelyPoor(String idCardNo) {
        return soldierBasicInfoProvider.queryExtremelyPoor(idCardNo);
    }

    @Override
    public BaseResponse<List<UnemploymentRegistrationEntity>> queryUnemploymentRegistration(String idCardNo) {
        return soldierBasicInfoProvider.queryUnemploymentRegistration(idCardNo);
    }

    @Override
    public BaseResponse<List<String>> listAllIdCardNo() {
        return soldierBasicInfoProvider.listAllIdCardNo();
    }


    @Override
    public BaseResponse<String> checkStudent() {
        return soldierBasicInfoProvider.checkStudent();
    }

    @Override
    public BaseResponse<String> insertSoldierTpALLInTestTable(SoldierTpAllInsertRequest soldierTpAllInsertRequest) {
        return soldierTpAllProvider.insertSoldierTpALLInTestTable(soldierTpAllInsertRequest);
    }

    @Override
    public BaseResponse<String> insertCommonSmsPool(CommonSmsPoolInsertRequest request) {
        return commonSmsPoolProvider.insertCommonSmsPool(request);
    }

    @Override
    public BaseResponse<List<CommonSmsPoolDTO>> listByAreaUsed(CommonSmsPoolSearchRequest commonSmsPoolSearchRequest) {
        return commonSmsPoolProvider.listByAreaUsed(commonSmsPoolSearchRequest);
    }

    @Override
    public BaseResponse<Integer> setAsUsed(CommonSmsPoolUpdateRequest commonSmsPoolUpdateRequest) {
        return commonSmsPoolProvider.setAsUsed(commonSmsPoolUpdateRequest);
    }

    @Override
    public BaseResponse<JdlkInfoResponseDto> downLoad(SoldierBasicInfoSearchRequest soldierBasicInfoSearchRequest) {
        return soldierBasicInfoProvider.downLoad(soldierBasicInfoSearchRequest);
    }

    @Override
    public BaseResponse<List<SoldierPetitionInfoDTO>> getSoldierPetitionInfoByIdCardNo(String idCardNo) {
        return soldierPetitionInfoProvider.getSoldierPetitionInfoByIdCardNo(idCardNo);
    }


    @Override
    public BaseResponse<String> batchInsert(List<SoldierPetitionInfoInsertRequest> requests) {
        return soldierPetitionInfoProvider.batchInsert(requests);
    }

    @Override
    public BaseResponse<Integer> fixResidentAdminAreaCode(SoldierBasicInfoUpdateRequest request) {
        return  soldierBasicInfoProvider.fixResidentAdminAreaCode(request);
    }

    @Override
    public BaseResponse<String> batchInsertXfData(List<XfInsertRequest> yhqXfList) {
        return soldierPetitionInfoProvider.batchInsertXfData(yhqXfList);
    }


    @Override
    public BaseResponse<InsuredEntity> queryCachedInsuredByConvert(String idCardNo, String realName) {
        return soldierBasicInfoProvider.queryCachedInsuredByConvert(idCardNo, realName);
    }

    @Override
    public BasePagingResponse<List<SoldierBasicOpenInfoDTO>> searchOpenBasicInfo(SoldierBasicInfoSearchRequest soldierBasicInfoSearchRequest) {
        return soldierBasicInfoProvider.searchOpenBasicInfo(soldierBasicInfoSearchRequest);
    }


    @Override
    public BaseResponse<Integer> importSyfInfoToBasicDb(SimpleApiRequest request) {
        return soldierBasicInfoProvider.importSyfInfoToBasicDb(request);
    }

    @Override
    public BaseResponse<Integer> encAllTable(SimpleApiRequest request) {
        return soldierBasicInfoProvider.encAllTable(request);
    }

    @Override
    public BaseResponse<String> exportHouseHoldInfo(SimpleApiRequest request) {
        return soldierTpAllProvider.exportHouseHoldInfo(request);
    }

    @Override
    public BasePagingResponse<List<SoldierBasicOpenInfoDTO>> searchElderlySoldier(SoldierBasicInfoSearchRequest soldierBasicInfoSearchRequest) {
        return soldierBasicInfoProvider.searchElderlySoldier(soldierBasicInfoSearchRequest);
    }

    @Override
    public BasePagingResponse<List<SoldierBasicOpenInfoDTO>> searchOpenBasicInfo2(final SoldierBasicInfoSearchRequest soldierBasicInfoSearchRequest) {
        return soldierBasicInfoProvider.searchOpenBasicInfo2(soldierBasicInfoSearchRequest);
    }

    @Override
    public BaseResponse<Boolean> updateSoldierBasicInformation(SoldierBasicInformationUpdateRequest request) {
        return soldierBasicInfoProvider.updateSoldierBasicInformation(request);
    }
}
